//public class RewardSOfCalc {
//    private int x, y, z;
//    private int[] rewards;
//
//    public  RewardSOfCalc(int x, int y, int z, int N) {
//        this.x = x;
//        this.y = y;
//        this.z = z;
//        this.rewards = new int[N + 1];
//        calculateRewards();
//    }
//
//    private void calculateRewards() {
//        for (int S = 1; S <= N; S++) {
//            int reward = 1; // 默认奖励
//            if (S % x == 0 && S % y == 0) {
//                reward = 2;
//            } else if (S % y == 0 && S % z == 0) {
//                reward = 4;
//            } else if (S % x == 0 && S % z == 0) {
//                reward = 8;
//            } else if (S % x == 0 && S % y == 0 && S % z == 0) {
//                reward = 10;
//            }
//            rewards[S] = reward;
//        }
//    }
//
//    public int maxRewardSum(int L) {
//        int maxSum = 0;
//        int currentSum = 0;
//        for (int i = 1; i <= N; i++) {
//            currentSum += rewards[i];
//            if (i >= L) {
//                currentSum -= rewards[i - L];
//            }
//            if (i >= L - 1) {
//                maxSum = Math.max(maxSum, currentSum);
//            }
//        }
//        return maxSum;
//    }
//
//    public static void main(String[] args) {
//        int x = 2, y = 3, z = 5, N = 10, L = 3;
//        RewardSOfCalc calculator = new RewardSOfCalc(x, y, z, N);
//        int maxSum = calculator.maxRewardSum(L);
//        System.out.println("The maximum reward sum for any continuous " + L + " users is: " + maxSum);
//    }
//}